Para realizar el análisis de complejidad, analizaremos el pseudocódigo de nuestra implementación del algoritmo: \\

\subsubsection{pseudocodigo}
	\begin{pseudo}
		\func{ordenarJoyas}{$arreglo(<costo,tiempo>) joyas,int cantJoyas}$\\
		\tab\tab\tab $arreglo(<costo,tiempo>) aux(cantJoyas)$ \tOde{n}\\
		\tab\tab\tab $mergesort(joyas,aux, \, 0, cantJoyas-1)$ \tOde{n*log(n)}\\
		\tab\tab\tab $SumatoriaJoyas =0, perdida=0$ \tOde{1}\\
		\tab\tab\tab \FOR$(int j = 0;j<cantJoyas;j++)$\\
		\tab\tab\tab\tab $ SumatoriaJoyas = SumatoriaJoyas +joyas[j].costo$\tOde{1}\\
		\tab\tab\tab \FOR$(int j = 0;j<cantJoyas;j++)$\\
		\tab\tab\tab\tab $perdida=perdida+joyas[j].tiempo *sumatoriaJoyas$\tOde{1}\\
		\tab\tab\tab\tab $sumatoriaJoyas = sumatoriaJoyas - joyas[j].costo $\tOde{1}\\	
		\tab\tab\tab $merge(joyas,aux,inicio,(inicio+fin)/2,fin)$\\
	\end{pseudo}
	\\
	El primero \FOR se ejecuta a lo sumo n veces, me guardo la suma de todos los costos\\
	El segundo \FOR se ejecuta a lo sumo n veces, calculo la perdida de construir la joya j y le resto el costo de la joya j a la suma de todas las joyas (SumatoriaJoyas).\\
	El costo Total del algoritmo es \Ode{n*log(n)} + \Ode{n} + \Ode{n} = \Ode{n*log(n)}\\
	
El merge sort es una modificacion del algoritmo de ordenamiento, sacado del libro Fundamentos de Algoritmia de los autores G. Brassard y P. Bratley ,para que respete el orden mensionado en la seccion solucion elegida.
